package com.zeei.bfs.dao;

import java.util.List;
import java.util.Map;

import com.zeei.bfs.vo.UserMenuVO;


public interface UserMenuDao {

	/**
	 * 方法描述：通过userId删除用户菜单权限
	 * 
	 * @param userId
	 * @return
	 */
	Integer deleteUserMenuByUserId(Integer userId);

	/**
	 * 方法描述：插入用户菜单权限
	 * 
	 * @param userMenu
	 * @return
	 */
	Integer insertUserMenu(UserMenuVO userMenu);
	
	/**
	 * 方法描述：批量插入用户菜单权限
	 * 
	 * @param userMenuList
	 * @return
	 */
	Integer insertUserMenuList(List<UserMenuVO> userMenuList);
	
	/**
	 * 方法描述：批量插入用户菜单权限所有参数
	 * 
	 * @param userMenuList
	 * @return
	 */
	Integer insertUserMenuAllParamList(List<UserMenuVO> userMenuList);
	
	/**
	 * 方法描述：修改排序
	 * 
	 * @param userMenu
	 * @return
	 */
	Integer updateOrderNum(UserMenuVO userMenu);
	
	/**
	 * 方法描述：根据条件查询用户的菜单信息
	 * 
	 * @param condition
	 * @return
	 */
	@SuppressWarnings("rawtypes")
	List<UserMenuVO> queryUserMenuByCondition(Map condition);

	/**
	 * 方法描述：删除
	 * 
	 * @param userMenu
	 * @return
	 */
	Integer deleteUserMenu(UserMenuVO userMenu);
	
	/**
	 * 方法描述：通过menuId批量删除用户菜单权限
	 * 
	 * @param menuIds
	 * @return
	 */
	Integer deleteUserMenuByMenuIds(List<Integer> menuIds);
}
